package cn.lanqiao.bigDate.service.sys;

import cn.lanqiao.bigDate.entity.User;
import cn.lanqiao.bigDate.entity.sys.SysMenu;
import cn.lanqiao.bigDate.reslut.TreeNode;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.IService;


import java.util.List;

/**
 * @description 菜单权限表服务层
 * @author yang
 * @date 2022-03-13
 */
public interface SysMenuService {

    /**
     * 按列表查询菜单树
     * @param menu
     * @param topName  根节点名称 可自定义
     * @return
     */
    List<TreeNode> findAllSysMenu(SysMenu menu,String topName);

    /**
     * 按列表查询菜单树
     * @return
     */
    List<SysMenu> findAllSysMenu();

    /**
     * 按id查询菜单
     * @param id
     * @return
     */
    SysMenu findSysMenuOne(Long id);

    /**
     * 报错菜单后返回树节点
     * @param sysMenu
     * @return
     */
    TreeNode addSysMenu(SysMenu sysMenu);



    /**
     * 按id删除菜单
     * @param id
     * @return
     */
    boolean deleteSysMenu(Long id);

    /**
     * 修改菜单
     * @param sysMenu
     * @return
     */
    TreeNode updateSysMenu(SysMenu sysMenu);

    /**
     * 查看菜单
     * @param roleId
     * @return
     */
    List<TreeNode> findAllSysMenu(Long roleId);
}